package tp.algo2.futbol.refactoring.karina

import tp.algo2.futbol.Jugador
import tp.algo2.futbol.Partido
import tp.algo2.futbol.TipoInfraccion
import tp.algo2.futbol.InfraccionPorDia
import tp.algo2.futbol.InfraccionPorHoras
import tp.algo2.futbol.InfraccionPorSiempre
import tp.algo2.futbol.refactoring.karina.TarjetaAmarilla

import java.util.Set
import java.util.List
import java.util.HashSet


class Arbitro {
	
	@Property TipoInfraccion infraccion
	@Property Partido partidoArbitar
	
	def sacarTarjetaAmarillaA (Jugador jugador, Partido partido) {
					
		if (jugador.contadorCeroPuntos != 3) {
			
    		jugador.contadorCeroPts()
    		
			if (jugador.cantidadTarjetasAmarillas.equals(5) ) {
    			jugador.puntos = jugador.puntos - jugador.leve
        		jugador.suspendido = true	
       		 }
                   	   		
		}
	
	}
	
	def sacarTarjetaRojaA (Jugador jugador, Partido partido) {
		
		if (jugador.puntos != 3) {
			
			jugador.contadorCeroPts()
		
			if ((jugador.cantidadTarjetasAmarillas >= 2)  && (partido.idPartido == partido.estePartido)) {
				jugador.puntos = jugador.puntos - jugador.grave
				jugador.expulsado = true
			}
		}
	
	}
	
	def infraccionarA (Jugador jugador, TipoInfraccion infraccion) {
		if (jugador.contadorCeroPuntos.equals(1)) {
			infraccion.InfraccionPorHoras
		}	
	}
}

